____ _ _ _ _
| _ \ ___ | |_ (_) _ __ ___ __| | (_) __ _
| |_) | / _ \ | __| | | | '_ \ / _ \ / _| | | | / _ |
| _ < | __/ | |_ | | | |_) | | __/ | (_| | | | | (_| |
|_| \_\ \___| \__| |_| | .__/ \___| \__,_| |_| \__,_|
|_|
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Field Programmable Gate Array
part 14/17 · 51.8 KB total
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Ältere Prozessoren (wie der wie zum Beispiel der Intel i7-3930K aus dem Jahr 2011) mit SIMD-Befehlen verarbeiten bis zu 192 einfach genaue 32-Bit-Gleitkommabefehle parallel (96 Additionen + 96 Multiplikationen), was einem theretischen Durchsatz von 300 GFlops entspricht. Aktuelle Prozessoren (wie z. B. der AMD EPYC 9655P) liefern bis zu 16.000 GFlops, aktuelle Graphikkarten (Nvidia RTX Pro 600) bis zu 126.000 TFlops. Aktuelle FPGAs können mit Taktfrequenzen von 500 MHz zehntausende Festkommaadditionen (bis 48 bit) und tausende Festkommamultiplikationen (bis 18 × 25 bit) zur gleichen Zeit ausführen. Damit ist für Aufgaben, die sich mit Festkommaarithmetik bearbeiten lassen, eine um den Faktor 2 bis 3 höhere Verarbeitungsleistung möglich, bei deutlich geringerer Leistungsaufnahme.
Vor- und Nachteile im Vergleich zu anwendungsspezifischen integrierten Schaltungen (ASIC)
Vorteile
• Deutlich geringere Entwicklungskosten (im Gegensatz zu ASICs werden keine Masken mit sehr hohen Fixkosten benötigt).
• bei Prototypen und Kleinserien sehr kostengünstig.
• Dynamisches, applikationsspezifisches Laden unterschiedlicher Hardware-Designs.
• Kürzere Implementierungszeiten.
• Einfach korrigier- und erweiterbar (rekonfigurierbar).
• Geringeres Designrisiko, da es nicht lange vor der Hardwareauslieferung fertig sein muss
• flexible IO-Ports und Standards, d. h. bei technischen Änderungen der Umgebung anpassbar.
Nachteile
• Ab mittleren Stückzahlen höherer Stückpreis (als ASICs).
• Geringere Taktraten (aktuell verfügbar bis 1,5 GHz, typisch werden 20–500 MHz realisiert; digitale ASICs bieten >3 GHz).
• Geringere Logikdichte (ca. 10-facher Flächenbedarf gegenüber ASIC gleicher Technologie).
• Geringere mögliche Komplexität der programmierbaren Logik.
• Deutlich höherer Leistungsbedarf für gleiche Menge an Logik bzw. Funktionen.
• Höhere Empfindlichkeit gegenüber Teilchenstrahlung und elektromagnetischen Wellen (da über RAM-Zellen und nicht durch Hartverdrahtung programmiert).
• Geringere Flexibilität, was Ausstattung z. B. mit eingebettetem Speicher oder analogen Elementen angeht, aber auch bei IO-Buffern.
• Der kürzere Designzyklus und die Möglichkeit, sehr spät noch Fehler korrigieren zu können, verleiten dazu, im Vorfeld weniger funktionale Tests durchzuführen.
• SRAM-basierte FPGAs (das sind z. B. alle von den Marktführern Xilinx und Altera angebotenen) müssen bei jeder Spannungsunterbrechung neu geladen werden. Das bedeutet, dass die Funktionalität nicht direkt nach dem Einschalten zur Verfügung steht. Das Laden kann – je nach eingesetzter Technik – bis zu einigen Sekunden dauern. Handelt es sich nicht um spezielle FPGAs mit integriertem Flashspeicher, sind dazu zusätzliche, externe Komponenten notwendig, z. B. ein herstellerspezifisches EEPROM oder Flash-Speicher, das die Konfiguration enthält oder ein Mikrocontroller mit zusätzlichem Flash-Speicher, der den Ladevorgang durchführt.
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────